
package com.nanyang.tms.api.dto.request.companyreceiver;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.nanyang.common.core.domain.ApiRequest;
import lombok.Data;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotEmpty;

/**
 * <p>Description:企业收件人表</p>
 * 
 * @author
 * @date 2020年11月11日 上午10:02:18
 * @Copyright Copyright (c) 2020 www.nanyang.cn Inc. All rights reserved.
 */
@Data
public class CompanyReceiverAddRequest extends ApiRequest {
	/**
	 * serialVersionUID
	 */
	private static final long serialVersionUID = 1L;


	@JsonIgnore
	private String pin;


	/**
	 * 企业编码
	 */
	@JsonIgnore
	private String companyCode;

	/**
	 * 收件人姓名
	 */
	@NotEmpty(message = "收件人姓名不能为空")
	@Length(max = 50, message = "recipientName长度需小于50个字符")
	private String recipientName;

	/**
	 * 收件人公司
	 */
	@Length(max = 200, message = "recipientCompanyName长度需小于200个字符")
	private String recipientCompanyName;

	/**
	 * 收件人邮箱
	 */
	@Length(max = 50, message = "email长度需小于50个字符")
	private String email;

	/**
	 * 收件人地址
	 */
	@NotEmpty(message = "收件人地址不能为空")
	@Length(max = 512, message = "address长度需小于512个字符")
	private String address;

	/**
	 * 收件人税号
	 */
	@Length(max = 40, message = "taxNo长度需小于40个字符")
	private String taxNo;

	/**
	 * 收件人电话
	 */
	@Length(max = 50, message = "tel长度需小于50个字符")
	private String tel;

	/**
	 * 邮政编码
	 */
	@Length(max = 10, message = "zipCode长度需小于10个字符")
	private String zipCode;

	/**
	 * 证件类型编码
	 */
	@Length(max = 30, message = "idCode长度需小于30个字符")
	private String idCode;

	/**
	 * 证件类型名称
	 */
	@Length(max = 30, message = "idName长度需小于30个字符")
	private String idName;

	/**
	 * 收件人手机
	 */
	@Length(max = 50, message = "mobile长度需小于50个字符")
	private String mobile;

	/**
	 * 收件人国家编码
	 */
	@Length(max = 10, message = "recpCountyCode长度需小于10个字符")
	private String recpCountyCode;
	/**
	 * 收件人国家
	 */
	@Length(max = 50, message = "recpCountyName长度需小于50个字符")
	private String recpCountyName;
	/**
	 * 州省
	 */
	@Length(max = 10, message = "provinceCode长度需小于10个字符")
	private String provinceCode;
	/**
	 * 州省
	 */
	@Length(max = 50, message = "province长度需小于50个字符")
	private String province;

	/**
	 * 城市
	 */
	@Length(max = 60, message = "city长度需小于60个字符")
	private String city;

	/**
	 * 区县
	 */
	@Length(max = 50, message = "district长度需小于50个字符")
	private String district;

	/**
	 * 门牌号
	 */
	@Length(max = 50, message = "houseNo长度需小于30个字符")
	private String houseNo;

	/**
	 * 销售平台编码
	 */
	@Length(max = 20, message = "platformCode长度需小于20个字符")
	private String platformCode;

	/**
	 * 销售平台名称
	 */
	@Length(max = 30, message = "platformName长度需小于30个字符")
	private String platformName;

	/**
	 * 买家ID
	 */
	@Length(max = 30, message = "sellerId长度需小于30个字符")
	private String sellerId;

	@Override
	public void requestCheck() {

	}

}
